#ifndef _TASK_POOL_H_
#define _TASK_POOL_H_

#include "Thread.h"
#include "Task.h"

struct TaskPoolStat
{
	int total_task_;
	int left_task_;
	int complete_task_;
	bool completed;
};

class TaskPool
{
public:
	TaskPool(){}
	virtual ~TaskPool(){}

public:
	virtual bool set_task(Task *task) = 0;
	virtual bool get_stat(TaskPoolStat *stat) = 0;
	virtual bool complete() = 0;
};

#endif